1. Field of the Invention
The present invention relates to a testing tool for verifying a reliability of robot software components, and more particularly, to a simulation-based interface testing automation system and method that may automatically perform a test for functions and performance of an interface with respect to robot software components.
2. Description of the Related Art
A conventional software component testing scheme may be divided into a source code-based testing scheme, a Built-in Test (BIT)-based testing scheme, and a component user specification-based testing scheme according to information required for testing.
The source code-based testing scheme may enable analysis of data flow information or control flow information on a source code as a test driver code used to generate a test case or perform a test based on source code information, when a source code of target software exists.
Additionally, in the source code-based testing scheme, a test case may be automatically generated using a symbol execution scheme, and a test driver code may be generated based on source code information to automatically execute the test case. However, it is impossible to perform a test for the target software, when there is no source code of a component.
The BIT-based testing scheme may enable a test case and a test driver code to be built in a component in advance so that a test may be performed, in order to increase a test possibility of the component.
However, the BIT-based testing scheme has disadvantages in that a memory usage or a size of a source code of the component is increased by adding the test case and the test driver code to the component. Additionally, when a component developer does not provide test information, it is impossible to perform the test.
The component user specification-based testing scheme may be used to test a component provided by a user, instead of information provided by a component developer. The component user specification-based testing scheme may break dependencies between a test specification and a component implementation using a Spy Class and an eXtensible Markup Language (XML) adapter module, to increase a reusability of a test and to automatically perform the test.
However, the component user specification-based testing scheme has disadvantages in that a scheme for automatically generating a test case required for testing is not provided, and a test may be performed only in a language such as Java.
Software components for implementing a robot may desirably be operated while being connected to robot hardware in real-time, differently from other software components. Accordingly, to test the robot software components, the robot hardware needs to be directly developed, which may cause troublesome.
Additionally, even when a test stub module is used instead of the robot hardware, a component developer may spend a considerable amount of time and effort to implement both of physical operation and function corresponding to the robot hardware.